package com.yidu.ladder.base.dao;


import java.util.List;
import java.util.Map;

import com.yidu.ladder.base.domain.Area;
import com.yidu.ladder.base.domain.AreaVo;

/**
 * 区域数据访问接口
 * @author lw
 * @since 2020/1/10
 */
public interface AreaDao {
	
	/**
	 * 查询所有
	 * @return
	 */
	public List<Area> findAll();
	
	/**
	 * 查询所有带条件
	 * @param areaVo
	 * @return	
	 */	
	public List<Area> findAllAreaWithPage(AreaVo areaVo);
	
	/**
	 * 计数
	 * @param areaVo
	 * @return
	 */
	public int countArea(AreaVo areaVo);
	/**
	 * 添加
	 * @param area
	 * @return
	 */
	public boolean addArea(Area area);
	
	/**
	 * 修改
	 * @param area
	 * @return
	 */
	public int updataArea(Area area);
	
	/**
	 * 冻结或还原
	 * @param paramMap
	 * @return
	 */
	public int frozenORrecoverArea(Map<String,Object> paramMap);
	
	/**
	 * 添加
	 * @param list
	 * @return
	 */
	public boolean insertdb(List<Area> list);
	
	/**
	 * 查询所有的省
	 * @return
	 */
	public List<Area> queryAllProvince();
	
	/**
	 * 查某个省下的所有市
	 * @param province
	 * @return
	 */
	public List<Area> queryAllCity(String province);
	
	/**
	 * 查某个市下的所有县（区）
	 * @param city
	 * @return
	 */
	public List<Area> queryAllDistrict(String city);
	
}
